The present invention relates generally to automatic performance techniques for reproducing tones of music (melody or accompaniment) using audio waveform data, and more particularly to a technique for controlling switchover timing of waveform data to be used for reproduction.
There have heretofore been known automatic performance apparatus which prestore an accompaniment pattern data set representative of an arpeggio pattern, bass pattern, rhythm pattern, etc., and which perform an automatic performance of tones on the basis of such a prestored accompaniment pattern data set. Note that, in this specification, the term “tone” is used to refer to not only a musical sound but also a voice or any other sound.
Generally, an accompaniment pattern data set has a predetermined length, such as a length of several measures, and the automatic performance apparatus can execute a continuous performance for a plurality of measures by repetitively reproducing the accompaniment pattern data set. In such a case, however, the performance tends to become monotonous because it is based on mere repetitive reproduction of the same accompaniment pattern data set (hereinafter referred to as “main pattern”). To avoid such monotonousness, it has been conventional to prepare in advance, separately from the main pattern, sub accompaniment pattern data sets (hereinafter referred to as “sub patterns”), such as fill-in, break and ad-lib patterns, each comprising data of a predetermined length (e.g., length of only one measure) shorter than the length of the main pattern, so that a performance based on a desired sub pattern can be temporarily inserted, during a performance based on the main pattern, in response to a switchover instruction given, for example, by a user or human operator's operation of a switch. Namely, in response to a switchover instruction, the performance based on the sub pattern is executed in place of the performance based on the main pattern, and, then, upon completion of the performance based on the sub pattern, the performance based on the main pattern is resumed.
Japanese Patent Application Laid-open Publication No. HEI-10-268866 (hereinafter referred to as “Patent Literature 1”) discloses an apparatus which, once a switchover from a main pattern to a fill-in pattern is instructed, immediately switches the accompaniment pattern reproduction from the main pattern to the fill-in pattern even though the main pattern is still in the middle of reproduction. In the apparatus disclosed in Patent Literature 1, tone control data defined in accordance with predetermined standards (e.g., MIDI data defined in accordance with the MIDI standards) are used as accompaniment pattern data.
Further, as the accompaniment pattern data, tone waveform data (audio waveform data) obtained by sampling an actual musical instrument performance, human voices, natural sounds or the like are sometimes used in addition to the aforementioned MIDI data. In the case where control data, such as MIDI data, are used as the accompaniment pattern data, the automatic performance apparatus can generate tones at a desired performance tempo, without causing any tone pitch change, by changing a readout speed or rate of event data (more specifically, note events, such as note-on and note-off events). It is also known that, in the case where audio waveform data are used as the accompaniment pattern data, on the other hand, the automatic performance apparatus can generate tones at a desired performance tempo, without causing any tone pitch change, by performing time stretch control. In this specification, the term “time stretch control” is used to refer to “compressing audio waveform data on the time axis” (time-axial compression) and/or “stretching audio waveform data on the time axis” (time-axial stretch).
Further, Japanese Patent Application Laid-open Publication No. 2001-312277 (hereinafter referred to as “Patent Literature 2”) discloses an apparatus which is constructed to output a tone generated on the basis of audio waveform data and a tone generated on the basis of MIDI data in synchronism with each other by changing, for each predetermined period corresponding to a performance tempo (e.g., for each measure), a reproduction position of the audio waveform data at each predetermined periodic time point (occurring every such predetermined period) to a predetermined position associated in advance with the predetermined period, in order to allow the reproduction position of the audio waveform data to match the reproduction position of the MIDI data per such predetermined period.
In the prior art apparatus disclosed in Patent Literature 2, it is conventional to perform control on the audio waveform data of a predetermined length at predetermined periodic time intervals (i.e., at each predetermined periodic time point). Thus, if a pattern switchover instruction is given at a time point different from the predetermined periodic time point, more specifically at a given enroute time point within a measure other than a measure boundary position, switchover control for effecting a switchover from a main pattern to a fill-in pattern is performed following arrival of the next measure. However, even for the audio waveform data, inability to switch from a main pattern to a fill-in pattern in immediate response to a pattern switchover instruction is inconvenient and undesirable. To avoid such inconveniency, it is conceivable to perform the switchover control before arrival of the next measure (period), but performing the switchover control before arrival of the next measure like this would increase a possibility of causing sound quality deterioration, such as generation of noise.